package com.seo.textgen.tokenizer;

public class Token {

	public static final Token EMPTY_TOKEN = new Token(TokenType.EMPTY, "\u1234");

	private TokenType tokenType;

	private String token;
	
	private String lower;

	private String tokenInProperCase;

	private float probability;

	public Token(TokenType tokenType, String token) {
		this.tokenType = tokenType;
		this.token = token;
		this.lower = token.toLowerCase();
	}
	
	public String getLower() {
		return lower;
	}

	public TokenType getTokenType() {
		return tokenType;
	}

	public void setTokenType(TokenType tokenType) {
		this.tokenType = tokenType;
	}

	public String getToken() {
		return token;
	}

	public void setToken(String token) {
		this.token = token;
	}

	public float getProbability() {
		return probability;
	}

	public void setProbability(float probability) {
		this.probability = probability;
	}

	public String getTokenInProperCase() {
		return tokenInProperCase;
	}

	public void setTokenInProperCase(String tokenInProperCase) {
		this.tokenInProperCase = tokenInProperCase;
	}

	@Override
	public String toString() {
		return tokenType.name() + "(" + token + ")";
	}
}
